OutDiversionsInit Subroutine

public subroutine OutDiversionsInit(pathOut)

initialise files for output

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: pathOut

Variables

Type Visibility Attributes Name Initial
type(Diversion), public, POINTER :: current
character(len=100), public :: string

Source Code

SUBROUTINE OutDiversionsInit &
  !
  ( pathOut )

IMPLICIT NONE


!arguments with intent(in):
CHARACTER ( LEN = *), INTENT(IN) :: pathOut


!local declarations:
TYPE (Diversion), POINTER   :: current !current diversion
CHARACTER (len = 100) :: string

!------------------------------end of declarations-----------------------------

current => diversionChannels
DO WHILE (ASSOCIATED(current)) !loop trough all diversions
    
    string = ToString (current % id)
    current % fileunitOut = GetUnit ()
    OPEN(current % fileunitOut,&
    file = pathOut (1:LEN_TRIM(pathOut))//'diversion_'//&
               TRIM(string)//'.out')
    WRITE(current % fileunitOut,'(a)') 'FEST: diversion routing'
    WRITE(current % fileunitOut,'(a,a)') &
         'diversion name: ', current % name &
         (1:LEN_TRIM(current % name))
    WRITE(current % fileunitOut,'(a,i4)') 'diversion id: ', current % id
    WRITE(current % fileunitOut,*)
    WRITE(current % fileunitOut,'(a)')'data'
    WRITE(current % fileunitOut,'(a)') 'DateTime &
            Qupstream[m3/s]  Qdownstream[m3/s] &
            QinChannel[m3/s] QoutChannel[m3/s]'

     current => current % next
    
END DO

RETURN
END SUBROUTINE OutDiversionsInit